package com.renwen.sms.service;

import com.renwen.sms.dto.*;
import com.renwen.sms.entity.Course;
import com.renwen.sms.entity.SelectTeacher;

import com.renwen.sms.util.Result;

import java.util.Map;

/**
 * 课程信息
 */
public interface CourseService {

    /**
     * 分页查询所有课程信息
     * @param page 页码
     * @param size 每页显示条数
     * @param searchMap 搜索条件
     * @return 课程列表列表
     */
    PageResult<CourseDto> list(Integer page, Integer size, Map<String, Object> searchMap);

    /**
     * 添加课程
     * @param  course 课程对象
     */
    void save(Course course);
    /**
     * 修改课程
     * @param  course 课程对象
     */
    void update(Course course);

    /**
     * 根据课程编号查询课程信息
     * @param id 课程编号
     * @return 课程信息
     */
    Result get(Integer id);

    /**
     * 根据课程号删除
     */
    void delete(String cNo);

    /**
     * 批量删除课程信息
     * @param ids 课程编号列表
     */
    void batchDelete(String ids);

    /**
      * 为未安排课程的教师指定当前课程
      */
    void selectTeacher(SelectTeacher selectTeacher);

}
